package com.jet.office.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jet.office.domain.dto.IndustryMerchantActiveDto;
import com.jet.office.domain.dto.IndustryMerchantCallbackDto;
import com.jet.office.domain.entity.IndustryAttrEntity;
import com.jet.office.domain.entity.MerchantIndustry;
import com.jet.office.domain.vo.IndustryActiveVo;
import com.jet.office.domain.vo.MerchantIndustryInfoVo;

import java.time.LocalDate;
import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author author
 * @since 2025-02-14
 */
public interface IMerchantIndustryService extends IService<MerchantIndustry> {

    IndustryActiveVo industryActive(IndustryMerchantActiveDto dto);

    IndustryActiveVo industryCallback(IndustryMerchantCallbackDto dto);

    void industryActive(String id, String industryId, int industryType, LocalDate expireDate, long addMonth);

    void industryCallback(String id, String industryId, int industryType, LocalDate expireDate, long callbackMonth);

    void save(long merchantNo, String industryId, int industryType, long addMonth);

    MerchantIndustry findByIndustryId(String industryId);

    MerchantIndustry findByMerchantNo(long merchantNo);

    MerchantIndustryInfoVo industryInfo(long merchantNo);

    List<IndustryAttrEntity> merchantChargeAbility(long merchantNo);

    void industryTrial(long merchantNo, long storeNo, String accountId);
}
